import pandas as pd
import matplotlib.pyplot as plt
import matplotlib

# 设置 Matplotlib 支持中文
matplotlib.rcParams['font.sans-serif'] = ['SimHei']  # 指定中文字体为黑体
matplotlib.rcParams['axes.unicode_minus'] = False  # 解决负号显示问题

# 读取Excel文件
file_path1 = '量化评估表陈.xlsx'
df1 = pd.read_excel(file_path1)
file_path2 = '量化评估表刘.xlsx'
df2 = pd.read_excel(file_path2)

# 效率计算
df1['综合效率'] = df1['完成量'] / df1['用时'] * df1['正确率'] / 100 * df1['难度系数']
df2['综合效率'] = df2['完成量'] / df2['用时'] * df2['正确率'] / 100 * df2['难度系数']

#按任务名分组
grouped1 = df1.groupby('任务')
grouped2 = df2.groupby('任务')

#绘图函数
def drawing(grouped,df):
    # 创建一个图形和轴
    fig, ax = plt.subplots()

    # 确保日期列是 datetime 类型
    df['日期'] = pd.to_datetime(df['日期'])

    # 遍历每个任务组，绘制曲线
    for task, group in grouped:
        # 按日期排序
        group = group.sort_values(by='日期')
        # 绘制曲线
        ax.plot(group['日期'], group['综合效率'], label=task, marker='o')

    # 设置图表标题和标签
    ax.set_title('综合效率随时间的变化曲线', fontsize=14)
    ax.set_xlabel('日期', fontsize=12)
    ax.set_ylabel('综合效率', fontsize=12)
    ax.legend(title='任务')

    # 自动格式化日期
    fig.autofmt_xdate()

    # 显示图形
    plt.show()

#选择绘图
print("请输入要绘制的曲线：1.陈海桥；2.刘思甜：")
flag = int(input())
if flag == 1:
    drawing(grouped1,df1)
else:
    drawing(grouped2,df2)
